<!-- HTML header for doxygen 1.8.6-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta content="text/xhtml;charset=utf-8" http-equiv="Content-Type"/>
<meta content="IE=9" http-equiv="X-UA-Compatible"/>
<meta content="Doxygen 1.8.13" name="generator"/>
<title>OpenCV: cv::aruco::CharucoBoard Class Reference</title>
<link href="../../opencv.ico" rel="shortcut icon" type="image/x-icon"/>
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
<script src="../../jquery.js" type="text/javascript"></script>
<script src="../../dynsections.js" type="text/javascript"></script>
<script src="../../tutorial-utils.js" type="text/javascript"></script>
<link href="../../search/search.css" rel="stylesheet" type="text/css"/>
<script src="../../search/searchdata.js" type="text/javascript"></script>
<script src="../../search/search.js" type="text/javascript"></script>
<script type="text/x-mathjax-config">
  MathJax.Hub.Config({
    extensions: ["tex2jax.js", "TeX/AMSmath.js", "TeX/AMSsymbols.js"],
    jax: ["input/TeX","output/HTML-CSS"],
});
//<![CDATA[
MathJax.Hub.Config(
{
  TeX: {
      Macros: {
          matTT: [ "\\[ \\left|\\begin{array}{ccc} #1 & #2 & #3\\\\ #4 & #5 & #6\\\\ #7 & #8 & #9 \\end{array}\\right| \\]", 9],
          fork: ["\\left\\{ \\begin{array}{l l} #1 & \\mbox{#2}\\\\ #3 & \\mbox{#4}\\\\ \\end{array} \\right.", 4],
          forkthree: ["\\left\\{ \\begin{array}{l l} #1 & \\mbox{#2}\\\\ #3 & \\mbox{#4}\\\\ #5 & \\mbox{#6}\\\\ \\end{array} \\right.", 6],
          forkfour: ["\\left\\{ \\begin{array}{l l} #1 & \\mbox{#2}\\\\ #3 & \\mbox{#4}\\\\ #5 & \\mbox{#6}\\\\ #7 & \\mbox{#8}\\\\ \\end{array} \\right.", 8],
          vecthree: ["\\begin{bmatrix} #1\\\\ #2\\\\ #3 \\end{bmatrix}", 3],
          vecthreethree: ["\\begin{bmatrix} #1 & #2 & #3\\\\ #4 & #5 & #6\\\\ #7 & #8 & #9 \\end{bmatrix}", 9],
          cameramatrix: ["#1 = \\begin{bmatrix} f_x & 0 & c_x\\\\ 0 & f_y & c_y\\\\ 0 & 0 & 1 \\end{bmatrix}", 1],
          distcoeffs: ["(k_1, k_2, p_1, p_2[, k_3[, k_4, k_5, k_6 [, s_1, s_2, s_3, s_4[, \\tau_x, \\tau_y]]]]) \\text{ of 4, 5, 8, 12 or 14 elements}"],
          distcoeffsfisheye: ["(k_1, k_2, k_3, k_4)"],
          hdotsfor: ["\\dots", 1],
          mathbbm: ["\\mathbb{#1}", 1],
          bordermatrix: ["\\matrix{#1}", 1]
      }
  }
}
);
//]]>
</script><script src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.0/MathJax.js" type="text/javascript"></script>
<link href="../../doxygen.css" rel="stylesheet" type="text/css"/>
<link href="../../stylesheet.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<!--#include virtual="/google-search.html"-->
<table cellpadding="0" cellspacing="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectlogo"><img alt="Logo" src="../../opencv-logo-small.png"/></td>
  <td style="padding-left: 0.5em;">
   <div id="projectname">OpenCV
    <span id="projectnumber">4.5.2</span>
   </div>
   <div id="projectbrief">Open Source Computer Vision</div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.13 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
</script>
<script src="../../menudata.js" type="text/javascript"></script>
<script src="../../menu.js" type="text/javascript"></script>
<script type="text/javascript">
$(function() {
  initMenu('../../',true,false,'search.php','Search');
  $(document).ready(function() { init_search(); });
});
</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow" onkeydown="return searchBox.OnSearchSelectKey(event)" onmouseout="return searchBox.OnSearchSelectHide()" onmouseover="return searchBox.OnSearchSelectShow()">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe frameborder="0" id="MSearchResults" name="MSearchResults" src="javascript:void(0)">
</iframe>
</div>
<div class="navpath" id="nav-path">
  <ul>
<li class="navelem"><a class="el" href="../../d2/d75/namespacecv.html">cv</a></li><li class="navelem"><a class="el" href="../../d4/d17/namespacecv_1_1aruco.html">aruco</a></li><li class="navelem"><a class="el" href="../../d0/d3c/classcv_1_1aruco_1_1CharucoBoard.html">CharucoBoard</a></li>  </ul>
</div>
</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="#pub-methods">Public Member Functions</a> |
<a href="#pub-static-methods">Static Public Member Functions</a> |
<a href="#pub-attribs">Public Attributes</a> |
<a href="../../d1/d02/classcv_1_1aruco_1_1CharucoBoard-members.html">List of all members</a>  </div>
  <div class="headertitle">
<div class="title">cv::aruco::CharucoBoard Class Reference<div class="ingroups"><a class="el" href="../../d9/d6a/group__aruco.html">ArUco Marker Detection</a></div></div>  </div>
</div><!--header-->
<div class="contents">
<p>ChArUco board Specific class for ChArUco boards. A ChArUco board is a planar board where the markers are placed inside the white squares of a chessboard. The benefits of ChArUco boards is that they provide both, ArUco markers versatility and chessboard corner precision, which is important for calibration and pose estimation. This class also allows the easy creation and drawing of ChArUco boards.  
 <a href="../../d0/d3c/classcv_1_1aruco_1_1CharucoBoard.html#details">More...</a></p>
<p><code>#include &lt;opencv2/aruco/charuco.hpp&gt;</code></p>
<div class="dynheader">
Inheritance diagram for cv::aruco::CharucoBoard:</div>
<div class="dyncontent">
 <div class="center">
  <img alt="" src="../../d0/d3c/classcv_1_1aruco_1_1CharucoBoard.png" usemap="#cv::aruco::CharucoBoard_map"/>
  <map id="cv::aruco::CharucoBoard_map" name="cv::aruco::CharucoBoard_map">
<area alt="cv::aruco::Board" coords="0,0,154,24" href="../../d4/db2/classcv_1_1aruco_1_1Board.html" shape="rect" title="Board of markers. "/>
</map>
 </div></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a5f1b7c91bd8bf8271931d6f06292f1bc"><td align="right" class="memItemLeft" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="../../d0/d3c/classcv_1_1aruco_1_1CharucoBoard.html#a5f1b7c91bd8bf8271931d6f06292f1bc">draw</a> (<a class="el" href="../../dc/d84/group__core__basic.html#ga346f563897249351a34549137c8532a0">Size</a> outSize, <a class="el" href="../../dc/d84/group__core__basic.html#gaad17fda1d0f0d1ee069aebb1df2913c0">OutputArray</a> img, int marginSize=0, int borderBits=1)</td></tr>
<tr class="memdesc:a5f1b7c91bd8bf8271931d6f06292f1bc"><td class="mdescLeft"> </td><td class="mdescRight">Draw a ChArUco board.  <a href="#a5f1b7c91bd8bf8271931d6f06292f1bc">More...</a><br/></td></tr>
<tr class="separator:a5f1b7c91bd8bf8271931d6f06292f1bc"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:ac269b4f889f6e25533ada1f2dc25cab8"><td align="right" class="memItemLeft" valign="top"><a class="el" href="../../dc/d84/group__core__basic.html#ga346f563897249351a34549137c8532a0">Size</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="../../d0/d3c/classcv_1_1aruco_1_1CharucoBoard.html#ac269b4f889f6e25533ada1f2dc25cab8">getChessboardSize</a> () const</td></tr>
<tr class="separator:ac269b4f889f6e25533ada1f2dc25cab8"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a42bae4e12de540eabb37d0cb0231b19a"><td align="right" class="memItemLeft" valign="top">float </td><td class="memItemRight" valign="bottom"><a class="el" href="../../d0/d3c/classcv_1_1aruco_1_1CharucoBoard.html#a42bae4e12de540eabb37d0cb0231b19a">getMarkerLength</a> () const</td></tr>
<tr class="separator:a42bae4e12de540eabb37d0cb0231b19a"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:ac9cbb7f17f15b7f097d2c9149e62b04f"><td align="right" class="memItemLeft" valign="top">float </td><td class="memItemRight" valign="bottom"><a class="el" href="../../d0/d3c/classcv_1_1aruco_1_1CharucoBoard.html#ac9cbb7f17f15b7f097d2c9149e62b04f">getSquareLength</a> () const</td></tr>
<tr class="separator:ac9cbb7f17f15b7f097d2c9149e62b04f"><td class="memSeparator" colspan="2"> </td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-methods"></a>
Static Public Member Functions</h2></td></tr>
<tr class="memitem:aa83b0a885d4dd137a41686991f85594c"><td align="right" class="memItemLeft" valign="top">static <a class="el" href="../../dc/d84/group__core__basic.html#ga6395ca871a678020c4a31fadf7e8cc63">Ptr</a>&lt; <a class="el" href="../../d0/d3c/classcv_1_1aruco_1_1CharucoBoard.html">CharucoBoard</a> &gt; </td><td class="memItemRight" valign="bottom"><a class="el" href="../../d0/d3c/classcv_1_1aruco_1_1CharucoBoard.html#aa83b0a885d4dd137a41686991f85594c">create</a> (int squaresX, int squaresY, float squareLength, float markerLength, const <a class="el" href="../../dc/d84/group__core__basic.html#ga6395ca871a678020c4a31fadf7e8cc63">Ptr</a>&lt; <a class="el" href="../../d5/d0b/classcv_1_1aruco_1_1Dictionary.html">Dictionary</a> &gt; &amp;<a class="el" href="../../d4/db2/classcv_1_1aruco_1_1Board.html#a733dd520d8e00312200aadab83c66672">dictionary</a>)</td></tr>
<tr class="memdesc:aa83b0a885d4dd137a41686991f85594c"><td class="mdescLeft"> </td><td class="mdescRight">Create a <a class="el" href="../../d0/d3c/classcv_1_1aruco_1_1CharucoBoard.html" title="ChArUco board Specific class for ChArUco boards. A ChArUco board is a planar board where the markers ...">CharucoBoard</a> object.  <a href="#aa83b0a885d4dd137a41686991f85594c">More...</a><br/></td></tr>
<tr class="separator:aa83b0a885d4dd137a41686991f85594c"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="inherit_header pub_static_methods_classcv_1_1aruco_1_1Board"><td colspan="2" onclick="javascript:toggleInherit('pub_static_methods_classcv_1_1aruco_1_1Board')"><img alt="-" src="../../closed.png"/> Static Public Member Functions inherited from <a class="el" href="../../d4/db2/classcv_1_1aruco_1_1Board.html">cv::aruco::Board</a></td></tr>
<tr class="memitem:a06243c9dcd6fedf32992388aa7527f59 inherit pub_static_methods_classcv_1_1aruco_1_1Board"><td align="right" class="memItemLeft" valign="top">static <a class="el" href="../../dc/d84/group__core__basic.html#ga6395ca871a678020c4a31fadf7e8cc63">Ptr</a>&lt; <a class="el" href="../../d4/db2/classcv_1_1aruco_1_1Board.html">Board</a> &gt; </td><td class="memItemRight" valign="bottom"><a class="el" href="../../d4/db2/classcv_1_1aruco_1_1Board.html#a06243c9dcd6fedf32992388aa7527f59">create</a> (<a class="el" href="../../dc/d84/group__core__basic.html#ga606feabe3b50ab6838f1ba89727aa07a">InputArrayOfArrays</a> <a class="el" href="../../d4/db2/classcv_1_1aruco_1_1Board.html#ae7c2f21aa18add0211c360935e3f589b">objPoints</a>, const <a class="el" href="../../dc/d84/group__core__basic.html#ga6395ca871a678020c4a31fadf7e8cc63">Ptr</a>&lt; <a class="el" href="../../d5/d0b/classcv_1_1aruco_1_1Dictionary.html">Dictionary</a> &gt; &amp;<a class="el" href="../../d4/db2/classcv_1_1aruco_1_1Board.html#a733dd520d8e00312200aadab83c66672">dictionary</a>, <a class="el" href="../../dc/d84/group__core__basic.html#ga353a9de602fe76c709e12074a6f362ba">InputArray</a> <a class="el" href="../../d4/db2/classcv_1_1aruco_1_1Board.html#a101fa2154784ce5560898763773d6bd4">ids</a>)</td></tr>
<tr class="memdesc:a06243c9dcd6fedf32992388aa7527f59 inherit pub_static_methods_classcv_1_1aruco_1_1Board"><td class="mdescLeft"> </td><td class="mdescRight">Provide way to create <a class="el" href="../../d4/db2/classcv_1_1aruco_1_1Board.html" title="Board of markers. ">Board</a> by passing necessary data. Specially needed in Python.  <a href="../../d4/db2/classcv_1_1aruco_1_1Board.html#a06243c9dcd6fedf32992388aa7527f59">More...</a><br/></td></tr>
<tr class="separator:a06243c9dcd6fedf32992388aa7527f59 inherit pub_static_methods_classcv_1_1aruco_1_1Board"><td class="memSeparator" colspan="2"> </td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
Public Attributes</h2></td></tr>
<tr class="memitem:a208edcbb778d3095cd5543660f6c4482"><td align="right" class="memItemLeft" valign="top">std::vector&lt; <a class="el" href="../../dc/d84/group__core__basic.html#ga3d79ceeb4419bccd0308dfdf1cd31435">Point3f</a> &gt; </td><td class="memItemRight" valign="bottom"><a class="el" href="../../d0/d3c/classcv_1_1aruco_1_1CharucoBoard.html#a208edcbb778d3095cd5543660f6c4482">chessboardCorners</a></td></tr>
<tr class="separator:a208edcbb778d3095cd5543660f6c4482"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:ac530b2d00d82940f85124a46369acc4d"><td align="right" class="memItemLeft" valign="top">std::vector&lt; std::vector&lt; int &gt; &gt; </td><td class="memItemRight" valign="bottom"><a class="el" href="../../d0/d3c/classcv_1_1aruco_1_1CharucoBoard.html#ac530b2d00d82940f85124a46369acc4d">nearestMarkerCorners</a></td></tr>
<tr class="separator:ac530b2d00d82940f85124a46369acc4d"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a0542ea3c5889d1a8b6610ed6c07fb4ad"><td align="right" class="memItemLeft" valign="top">std::vector&lt; std::vector&lt; int &gt; &gt; </td><td class="memItemRight" valign="bottom"><a class="el" href="../../d0/d3c/classcv_1_1aruco_1_1CharucoBoard.html#a0542ea3c5889d1a8b6610ed6c07fb4ad">nearestMarkerIdx</a></td></tr>
<tr class="separator:a0542ea3c5889d1a8b6610ed6c07fb4ad"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="inherit_header pub_attribs_classcv_1_1aruco_1_1Board"><td colspan="2" onclick="javascript:toggleInherit('pub_attribs_classcv_1_1aruco_1_1Board')"><img alt="-" src="../../closed.png"/> Public Attributes inherited from <a class="el" href="../../d4/db2/classcv_1_1aruco_1_1Board.html">cv::aruco::Board</a></td></tr>
<tr class="memitem:a733dd520d8e00312200aadab83c66672 inherit pub_attribs_classcv_1_1aruco_1_1Board"><td align="right" class="memItemLeft" valign="top"><a class="el" href="../../dc/d84/group__core__basic.html#ga6395ca871a678020c4a31fadf7e8cc63">Ptr</a>&lt; <a class="el" href="../../d5/d0b/classcv_1_1aruco_1_1Dictionary.html">Dictionary</a> &gt; </td><td class="memItemRight" valign="bottom"><a class="el" href="../../d4/db2/classcv_1_1aruco_1_1Board.html#a733dd520d8e00312200aadab83c66672">dictionary</a></td></tr>
<tr class="memdesc:a733dd520d8e00312200aadab83c66672 inherit pub_attribs_classcv_1_1aruco_1_1Board"><td class="mdescLeft"> </td><td class="mdescRight">the dictionary of markers employed for this board  <a href="../../d4/db2/classcv_1_1aruco_1_1Board.html#a733dd520d8e00312200aadab83c66672">More...</a><br/></td></tr>
<tr class="separator:a733dd520d8e00312200aadab83c66672 inherit pub_attribs_classcv_1_1aruco_1_1Board"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a101fa2154784ce5560898763773d6bd4 inherit pub_attribs_classcv_1_1aruco_1_1Board"><td align="right" class="memItemLeft" valign="top">std::vector&lt; int &gt; </td><td class="memItemRight" valign="bottom"><a class="el" href="../../d4/db2/classcv_1_1aruco_1_1Board.html#a101fa2154784ce5560898763773d6bd4">ids</a></td></tr>
<tr class="separator:a101fa2154784ce5560898763773d6bd4 inherit pub_attribs_classcv_1_1aruco_1_1Board"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:ae7c2f21aa18add0211c360935e3f589b inherit pub_attribs_classcv_1_1aruco_1_1Board"><td align="right" class="memItemLeft" valign="top">std::vector&lt; std::vector&lt; <a class="el" href="../../dc/d84/group__core__basic.html#ga3d79ceeb4419bccd0308dfdf1cd31435">Point3f</a> &gt; &gt; </td><td class="memItemRight" valign="bottom"><a class="el" href="../../d4/db2/classcv_1_1aruco_1_1Board.html#ae7c2f21aa18add0211c360935e3f589b">objPoints</a></td></tr>
<tr class="separator:ae7c2f21aa18add0211c360935e3f589b inherit pub_attribs_classcv_1_1aruco_1_1Board"><td class="memSeparator" colspan="2"> </td></tr>
</table>
<a id="details" name="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>ChArUco board Specific class for ChArUco boards. A ChArUco board is a planar board where the markers are placed inside the white squares of a chessboard. The benefits of ChArUco boards is that they provide both, ArUco markers versatility and chessboard corner precision, which is important for calibration and pose estimation. This class also allows the easy creation and drawing of ChArUco boards. </p>
</div><h2 class="groupheader">Member Function Documentation</h2>
<a id="aa83b0a885d4dd137a41686991f85594c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa83b0a885d4dd137a41686991f85594c">◆ </a></span>create()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">static <a class="el" href="../../dc/d84/group__core__basic.html#ga6395ca871a678020c4a31fadf7e8cc63">Ptr</a>&lt;<a class="el" href="../../d0/d3c/classcv_1_1aruco_1_1CharucoBoard.html">CharucoBoard</a>&gt; cv::aruco::CharucoBoard::create </td>
          <td>(</td>
          <td class="paramtype">int </td>
          <td class="paramname"><em>squaresX</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int </td>
          <td class="paramname"><em>squaresY</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float </td>
          <td class="paramname"><em>squareLength</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float </td>
          <td class="paramname"><em>markerLength</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="../../dc/d84/group__core__basic.html#ga6395ca871a678020c4a31fadf7e8cc63">Ptr</a>&lt; <a class="el" href="../../d5/d0b/classcv_1_1aruco_1_1Dictionary.html">Dictionary</a> &gt; &amp; </td>
          <td class="paramname"><em>dictionary</em> </td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table><table class="python_language"><tr><th colspan="999" style="text-align:left">Python:</th></tr><tr><td style="width: 20px;"></td><td>retval</td><td>=</td><td>cv.aruco.CharucoBoard_create(</td><td class="paramname">squaresX, squaresY, squareLength, markerLength, dictionary</td><td>)</td></tr></table>
</div><div class="memdoc">
<p>Create a <a class="el" href="../../d0/d3c/classcv_1_1aruco_1_1CharucoBoard.html" title="ChArUco board Specific class for ChArUco boards. A ChArUco board is a planar board where the markers ...">CharucoBoard</a> object. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">squaresX</td><td>number of chessboard squares in X direction </td></tr>
    <tr><td class="paramname">squaresY</td><td>number of chessboard squares in Y direction </td></tr>
    <tr><td class="paramname">squareLength</td><td>chessboard square side length (normally in meters) </td></tr>
    <tr><td class="paramname">markerLength</td><td>marker side length (same unit than squareLength) </td></tr>
    <tr><td class="paramname">dictionary</td><td>dictionary of markers indicating the type of markers. The first markers in the dictionary are used to fill the white chessboard squares. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>the output <a class="el" href="../../d0/d3c/classcv_1_1aruco_1_1CharucoBoard.html" title="ChArUco board Specific class for ChArUco boards. A ChArUco board is a planar board where the markers ...">CharucoBoard</a> object</dd></dl>
<p>This functions creates a <a class="el" href="../../d0/d3c/classcv_1_1aruco_1_1CharucoBoard.html" title="ChArUco board Specific class for ChArUco boards. A ChArUco board is a planar board where the markers ...">CharucoBoard</a> object given the number of squares in each direction and the size of the markers and chessboard squares. </p>
</div>
</div>
<a id="a5f1b7c91bd8bf8271931d6f06292f1bc"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5f1b7c91bd8bf8271931d6f06292f1bc">◆ </a></span>draw()</h2>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void cv::aruco::CharucoBoard::draw </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="../../dc/d84/group__core__basic.html#ga346f563897249351a34549137c8532a0">Size</a> </td>
          <td class="paramname"><em>outSize</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="../../dc/d84/group__core__basic.html#gaad17fda1d0f0d1ee069aebb1df2913c0">OutputArray</a> </td>
          <td class="paramname"><em>img</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int </td>
          <td class="paramname"><em>marginSize</em> = <code>0</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int </td>
          <td class="paramname"><em>borderBits</em> = <code>1</code> </td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table><table class="python_language"><tr><th colspan="999" style="text-align:left">Python:</th></tr><tr><td style="width: 20px;"></td><td>img</td><td>=</td><td>cv.aruco_CharucoBoard.draw(</td><td class="paramname">outSize[, img[, marginSize[, borderBits]]]</td><td>)</td></tr></table>
</div><div class="memdoc">
<p>Draw a ChArUco board. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">outSize</td><td>size of the output image in pixels. </td></tr>
    <tr><td class="paramname">img</td><td>output image with the board. The size of this image will be outSize and the board will be on the center, keeping the board proportions. </td></tr>
    <tr><td class="paramname">marginSize</td><td>minimum margins (in pixels) of the board in the output image </td></tr>
    <tr><td class="paramname">borderBits</td><td>width of the marker borders.</td></tr>
  </table>
  </dd>
</dl>
<p>This function return the image of the ChArUco board, ready to be printed. </p>
</div>
</div>
<a id="ac269b4f889f6e25533ada1f2dc25cab8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac269b4f889f6e25533ada1f2dc25cab8">◆ </a></span>getChessboardSize()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="../../dc/d84/group__core__basic.html#ga346f563897249351a34549137c8532a0">Size</a> cv::aruco::CharucoBoard::getChessboardSize </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table><table class="python_language"><tr><th colspan="999" style="text-align:left">Python:</th></tr><tr><td style="width: 20px;"></td><td>retval</td><td>=</td><td>cv.aruco_CharucoBoard.getChessboardSize(</td><td class="paramname"></td><td>)</td></tr></table>
</div><div class="memdoc">
</div>
</div>
<a id="a42bae4e12de540eabb37d0cb0231b19a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a42bae4e12de540eabb37d0cb0231b19a">◆ </a></span>getMarkerLength()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">float cv::aruco::CharucoBoard::getMarkerLength </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table><table class="python_language"><tr><th colspan="999" style="text-align:left">Python:</th></tr><tr><td style="width: 20px;"></td><td>retval</td><td>=</td><td>cv.aruco_CharucoBoard.getMarkerLength(</td><td class="paramname"></td><td>)</td></tr></table>
</div><div class="memdoc">
</div>
</div>
<a id="ac9cbb7f17f15b7f097d2c9149e62b04f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac9cbb7f17f15b7f097d2c9149e62b04f">◆ </a></span>getSquareLength()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">float cv::aruco::CharucoBoard::getSquareLength </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table><table class="python_language"><tr><th colspan="999" style="text-align:left">Python:</th></tr><tr><td style="width: 20px;"></td><td>retval</td><td>=</td><td>cv.aruco_CharucoBoard.getSquareLength(</td><td class="paramname"></td><td>)</td></tr></table>
</div><div class="memdoc">
</div>
</div>
<h2 class="groupheader">Member Data Documentation</h2>
<a id="a208edcbb778d3095cd5543660f6c4482"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a208edcbb778d3095cd5543660f6c4482">◆ </a></span>chessboardCorners</h2>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">std::vector&lt; <a class="el" href="../../dc/d84/group__core__basic.html#ga3d79ceeb4419bccd0308dfdf1cd31435">Point3f</a> &gt; cv::aruco::CharucoBoard::chessboardCorners</td>
        </tr>
      </table>
</div><div class="memdoc">
</div>
</div>
<a id="ac530b2d00d82940f85124a46369acc4d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac530b2d00d82940f85124a46369acc4d">◆ </a></span>nearestMarkerCorners</h2>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">std::vector&lt; std::vector&lt; int &gt; &gt; cv::aruco::CharucoBoard::nearestMarkerCorners</td>
        </tr>
      </table>
</div><div class="memdoc">
</div>
</div>
<a id="a0542ea3c5889d1a8b6610ed6c07fb4ad"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0542ea3c5889d1a8b6610ed6c07fb4ad">◆ </a></span>nearestMarkerIdx</h2>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">std::vector&lt; std::vector&lt; int &gt; &gt; cv::aruco::CharucoBoard::nearestMarkerIdx</td>
        </tr>
      </table>
</div><div class="memdoc">
</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>opencv2/aruco/<a class="el" href="../../da/d3b/charuco_8hpp.html">charuco.hpp</a></li>
</ul>
</div><!-- contents -->
<!-- HTML footer for doxygen 1.8.6-->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Fri Apr 2 2021 11:36:43 for OpenCV by  <a href="http://www.doxygen.org/index.html">
<img alt="doxygen" class="footer" src="../../doxygen.png"/>
</a> 1.8.13
</small></address>
<script type="text/javascript">
//<![CDATA[
addTutorialsButtons();
//]]>
</script>
</body>
</html>
